Multimedia presentations are made up of discrete multimedia or audio video (A/V) objects (multimedia objects). Multimedia objects may originate from one source such as a digital versatile disc (DVD) disc played on a drive on a personal computer (PC). In other cases multimedia objects may originate from (i.e., streamed from) multiple sources and played at a common destination. For example, multimedia objects may originate from multiple websites and played at a PC. Multimedia presentations may include and combine multimedia objects from videotape, a television broadcast, DVD, and from a website on the Internet (i.e., evolving web broadcast).
Multimedia objects include A/V frames, pictures, video clips, audio clips, and audio samples. Various formats may describe multimedia objects and include static image, animation, video, and text formats. Static image formats include portable network graphics (PNG), joint photographic experts group (JPEG), and motion picture experts group (MPEG). Animation formats include multiple-image network graphics (MNG). Video formats include MPEG video, audio video interleave (AVI) and various streaming formats. Text formats include extensible markup language (XML), hypertext markup language (HTML), and extensible HTML (XHTML).
Synchronized multimedia integration language (SMIL) is a declarative language for describing structural, spatial and temporal effects such as animation in a presentation. A SMIL listing or document describes when multimedia objects are displayed. In particular, a SMIL document makes use of “time containers” that group data (i.e., multimedia objects). SMIL time containers include a tag <par> which “plays” pieces of data in parallel (i.e., the same time); a tag <seq> which plays data sequentially (i.e. one after the other in the time container list); and a tag <excl> which plays a piece of data exclusive of other data (i.e., no particular sequence).
Although data or media objects may originate from one or multiple sources, when using SMIL, data or media objects must be “linked” together by a single SMIL document. In other words, the single SMIL document is needed to link multimedia objects with one another.
An “element” is a basic unit of an XML document. An element can include other elements and text, and begins with an opening tag <name>, and ends with a closing tag </name>. Tags that begin with <?, and end with ?> are processing instructions that specify particular style sheets to be used. Style sheets are distinct documents that define format for tags of an XML document.
XML tags identify and describe data or multimedia objects that are contained in or referenced by the element. Attributes in the element further describe the purpose and content of data or multimedia elements of the element. Data that is part of an XML document, in particular an element, is available to other XML documents.
Associated with an XML document are schemas used to describe which tags may be used in which XML documents. Such schemas include tag formatting performed by eXtensible Stylesheet Language for Formatting Objects (XSL-FO) or cascading style sheets.
An XSL-FO document is a transformed XML document that contains information as to structure and appearance.
External style sheets may be provided as a reference for documents as to structure and appearance information. In other words, external style sheets provide the ability to describe appearance and structure of objects in other documents; however, external style sheets and XML documents do have the ability to describe when objects are to be played or presented.
XML does not provide temporal reference for multimedia objects. SMIL provides the temporal reference for multimedia objects; however, SMIL is relatively inflexible and requires that multimedia objects be reference directly by a single SMIL document. In other words, unlike extensible textual markup languages like XML, SMIL does not allow documents to control other documents.